#include<bits/stdc++.h>
using namespace std;
const int N=3E5+10;
vector<int> arr(N,0);
int n,m;
struct sss
{
    int l;
    int r;
}s[N];

void build(vector<int>&a,int l,int r,int w)
{
    a[l]+=w;
    a[r+1]-=w;
}
void sum(vector<int>&a)
{
    for(int i=1;i<=n;i++)
    {
        a[i]=a[i-1]+a[i];
    }
}
int main()
{
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    cin>>n>>m;
    for(int i=0;i<m;i++)
    {
        int l,r;
        cin>>l>>r;
        s[i]={l,r};
        build(arr,l,r,1);
    }
    // for(int i=1;i<=n+1;i++) cout<<arr[i]<<" ";
    // cout<<endl;
    sum(arr);
    // for(int i=1;i<=n;i++) cout<<arr[i]<<" ";
    // cout<<endl;
    int zeroc=0;
    vector<int> cnt(n+1,0);//记录差分之后1的数量
    for(int i=1;i<=n;i++)
    {
        if(arr[i]==0) zeroc++;
        cnt[i]=cnt[i-1]+(arr[i]==1?1:0);
    }
    // for(int i=1;i<=n;i++) cout<<cnt[i]<<" ";
    // cout<<endl;
    // cout<<"ze:"<<zeroc<<endl;
    for(int i=0;i<m;i++)
    {
        int l=s[i].l;
        int r=s[i].r;
        cout<<cnt[r]-cnt[l-1]+zeroc<<endl;
    }
    return 0;
}